hvm: buffered_ioreq does not need a 'df' field. Add explicit bitfield
authorKeir Fraser <keir.fraser@citrix.com>
Thu, 6 Dec 2007 15:17:48 +0000 (15:17 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Thu, 6 Dec 2007 15:17:48 +0000 (15:17 +0000)
padding to ioreq and buf_ioreq structs.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
tools/ioemu/target-i386-dm/helper2.c
xen/arch/x86/hvm/intercept.c
xen/include/public/hvm/ioreq.h

index c139f1263246797980e86101dfaefc3ab75bdf8a..e0f16845f659df24dfd75bdd2a0faa45036527be 100644 (file)
@@ -556,7 +556,7 @@ void __handle_buffered_iopage(CPUState *env)
         req.data = buf_req->data;
         req.state = STATE_IOREQ_READY;
         req.dir = buf_req->dir;
-        req.df = buf_req->df;
+        req.df = 1;
         req.type = buf_req->type;
         req.data_is_ptr = 0;
         qw = (req.size == 8);
index be58c05d0cc756394f114bed7dc8538fd3dd5fcf..27d0cbc6abcd5df99fd5923290b82ecbc38a8c3f 100644 (file)
@@ -176,7 +176,6 @@ int hvm_buffered_io_send(ioreq_t *p)
 
     bp.type = p->type;
     bp.dir  = p->dir;
-    bp.df   = p->df;
     switch ( p->size )
     {
     case 1:
index 456d059d9271469f05aa1902116344e3954ff81f..e14d5a92915e14c235e333384cb4a1265f26fec3 100644 (file)
@@ -58,6 +58,7 @@ struct ioreq {
                              *   of the real data to use.   */
     uint8_t dir:1;          /*  1=read, 0=write             */
     uint8_t df:1;
+    uint8_t pad:1;
     uint8_t type;           /* I/O type                     */
     uint8_t _pad0[6];
     uint64_t io_count;      /* How many IO done on a vcpu   */
@@ -79,7 +80,7 @@ typedef struct shared_iopage shared_iopage_t;
 
 struct buf_ioreq {
     uint8_t  type;   /* I/O type                    */
-    uint8_t  df:1;   /* EFLAGS.DF                   */
+    uint8_t  pad:1;
     uint8_t  dir:1;  /* 1=read, 0=write             */
     uint8_t  size:2; /* 0=>1, 1=>2, 2=>4, 3=>8. If 8, use two buf_ioreqs */
     uint32_t addr:20;/* physical address            */